package test5.lupeng.jf.com.teamdemo.untils;

import android.content.Context;
import android.content.SharedPreferences;

/**
 *  利用SharedPreferences 存储数据
 * Created by jf on 2017/7/26.
 */

public class SpUtils {
    // 配置文件的名字
    static String SP_NAME = "config";

    /**
     *  使用SharedPreferences 存储一个boolean 类型的值
     *  存储了登录状态的数据
     * @param context 上下文
     * @param key  存储当前key 的value 值
     * @param value  要存储的boolean 类型的值
     */
    public static void putBoolean(Context context, String key, boolean value){
        SharedPreferences sp = context.getSharedPreferences(SP_NAME, Context.MODE_PRIVATE);
        SharedPreferences.Editor et = sp.edit();
        et.putBoolean(key, value);
        et.commit();
    }

    /**
     *  通过SharedPreferences 获取到登录状态
     * @param context 上下文
     * @param key 取到存储的当前key 值得数据
     * @return
     */
    public static boolean getBoolean(Context context, String key){
        SharedPreferences sp = context.getSharedPreferences(SP_NAME, Context.MODE_PRIVATE);
        boolean value = sp.getBoolean(key, false);
        return value;
    }

    /**
     * 使用sp存储一个String类型的数据
     *
     * @param context 上下文
     * @param value   值
     */
    public static void putString(Context context, String key, String value) {
        SharedPreferences sp = context.getSharedPreferences(SP_NAME, Context.MODE_PRIVATE);
        SharedPreferences.Editor et = sp.edit();
        et.putString(key, value);
        et.apply();
    }

    /**
     * 获取String类型的数据
     *
     * @param key 取指定key的值
     * @return 取到的值, 默认值为"";
     */
    public static String getString(Context context, String key) {
        SharedPreferences sp = context.getSharedPreferences(SP_NAME, Context.MODE_PRIVATE);
        String value = sp.getString(key, "");
        return value;
    }

    public static boolean clearData(Context context){
        SharedPreferences sp = context.getSharedPreferences(SP_NAME, Context.MODE_PRIVATE);
        SharedPreferences.Editor editor = sp.edit();
        editor.clear();
        return editor.commit();
    }


}
